1. Field of the Invention
The present invention relates to a video encoding apparatus configured to encode a video and a video decoding apparatus configured to decode a video encoded by the video encoding apparatus.
2. Description of the Related Art
Conventional techniques have been proposed which allow inter-frame prediction to be performed when a video is encoded (see Joint Video Team (JVT) of ISO/IEC MPEG and ITU-T VCEG, “Text of ISO/IEC 14496-10 Advanced Video Coding”, July 2004, for example). With such inter-frame prediction, a region having a pattern similar to that of an encoding target region is detected from an image which has already been encoded, and the pixel values of the region thus detected are used as the predicted value of the encoding target region. In the following description, the processing for obtaining the prediction error that occurs in inter-frame prediction will be referred to as “motion compensation”. Also, a spatial vector that indicates motion from an encoding target region to a similar region which has already been encoded will be referred to as an “MV (Motion Vector)”.
With the technique described in Joint Video Team(JVT) of ISO/IEC MPEG and ITU-T VCEG, “Text of ISO/IEC 14496-10 Advanced Video Coding”, a pixel value at an intermediate position is generated (fractional position accuracy), and such a pixel value can be used as a predicted value in addition to a pixel value at an integer sampling position (integer position accuracy) when the similar region is detected (motion detection). The technique described here provides inter-frame prediction at quarter-pixel precision.
Also, as interpolation processing (processing using an interpolation filter) performed in a step for detecting motion with fractional position accuracy, a method (method using an adaptive interpolation filter) has been proposed in which processing is performed on a video pattern in an adaptive manner (see Thomas Wedi, “Adaptive Interpolation Filters and High-Resolution Displacements for Video Coding,” IEEE Trans. on Circuits and Systems for Video Technology, Vol. 16, No. 4, April 2006 and Yuri Vatis and Joern Ostermann, “Adaptive Interpolation Filter for H.264/AVC,” IEEE Trans. on Circuits and Systems for Video Technology, Vol. 19, No. 2, February 2009, for example). The techniques described in Thomas Wedi, and Yuri Vatis and Joern Ostermann, provide improved encoding performance as compared with the technique described in the aforementioned Joint Video Team(JVT) of ISO/IEC MPEG and ITU-T VCEG, “Text of ISO/IEC 14496-10 Advanced Video Coding”.
With the methods described in Thomas Wedi, and Yuri Vatis and Joern Ostermann, operations are performed using the pixel values of an image to be encoded (which will be referred to as the “raw image”) and the pixel values of the encoded image (which will be referred to as the “reference image”) so as to determine an optimal interpolation filter for the raw image.
Here, in order to determine such an optimal interpolation filter for the raw image, a motion vector in the raw image is required. Before such a motion vector is obtained in the raw image, there is a need to perform encoding processing on the raw image so as to obtain the motion vector. Accordingly, there is a need to perform encoding processing on the raw image multiple times.
Furthermore, in order to determine such an optimal filter for the raw image, there is a need to solve equations corresponding to the number of taps.
As described above, the methods described in Thomas Wedi, and Yuri Vatis and Joern Ostermann, require a large amount of operations, leading to a long processing time. There is a demand for providing real-time processing in a video encoding apparatus and a video decoding apparatus. However, in a case in which an adaptive interpolation filter is applied, in some cases, such an arrangement is not capable of providing such real-time processing.
The present invention has been made in order to solve the aforementioned problems. Accordingly, it is a general purpose of the present invention to provide a video encoding apparatus and a video decoding apparatus which are capable of providing real-time processing having improved encoding performance.